﻿using System;
using System.Collections;
using System.Windows.Forms;

namespace Gui.Functies.Takenlijst
{
    public partial class Edittaak : UserControl
    {
        private int projectID;
        private string taaknaam;
        private Hashtable takenBezig;
        private Hashtable takenKlaar;
        private Hashtable takenNietKlaar;     
                
        public Edittaak()
        {
            
        }
        //Constructor.
        public Edittaak(int projectnummer, Hashtable bezig, Hashtable klaar, Hashtable nietKlaar)
        {
            projectID = projectnummer;
            takenBezig = bezig;
            takenKlaar = klaar;
            takenNietKlaar = nietKlaar;
            InitializeComponent();
            GetTaken();
        }
        //Haalt de taken op.
        public void GetTaken()
        {
            comboBox1.Items.Clear();
            //taken weergeven die niet klaar zijn
            foreach (string key in takenNietKlaar.Keys)
            {
                comboBox1.Items.Add(String.Format("{0}", key));
            }

            //taken weergeven die bezig zijn
            foreach (string key in takenBezig.Keys)
            {
                comboBox1.Items.Add(String.Format("{0}", key));
            }

            //taken weergeven die klaar zijn
            foreach (string key in takenKlaar.Keys)
            {
                comboBox1.Items.Add(String.Format("{0}", key));
            }
        }
        //Opent het edit scherm voor de aangeklikte taak.
        private void btnChoose_Click(object sender, EventArgs e)
        {
            taaknaam = comboBox1.SelectedItem.ToString();

            if (taaknaam != "")
            {
                if(takenBezig.ContainsKey(taaknaam))
                {
                    int taakid = Int32.Parse(takenBezig[taaknaam].ToString());
                    this.Controls.Clear();
                    this.Controls.Add(new Edittaak2(projectID, taakid, taaknaam));
                }
                if(takenKlaar.ContainsKey(taaknaam))
                {
                    int taakid = Int32.Parse(takenKlaar[taaknaam].ToString());
                    this.Controls.Clear();
                    this.Controls.Add(new Edittaak2(projectID, taakid, taaknaam));
                }
                if(takenNietKlaar.ContainsKey(taaknaam))
                {
                    int taakid = Int32.Parse(takenNietKlaar[taaknaam].ToString());
                    this.Controls.Clear();
                    this.Controls.Add(new Edittaak2(projectID, taakid, taaknaam));
                }
            }
            else
            {
                MessageBox.Show("Niet alle velden zijn ingevuld!");
            }
        }
    }
}
